home *** CD-ROM | disk | FTP | other *** search
-
-
-
- VVVVkkkkIIIInnnntttteeeerrrrrrrruuuuppppttttDDDDiiiiaaaalllloooogggg((((3333xxxx)))) VVVVkkkkIIIInnnntttteeeerrrrrrrruuuuppppttttDDDDiiiiaaaalllloooogggg((((3333xxxx))))
-
-
-
- NNNNAAAAMMMMEEEE
- VkInterruptDialog - A dialog manager that support interrupts
-
- IIIINNNNHHHHEEEERRRRIIIITTTTSSSS FFFFRRRROOOOMMMM
- VkBusyDialog : VkDialogManager : VkComponent : VkCallbackObject
-
- HHHHEEEEAAAADDDDEEEERRRR FFFFIIIILLLLEEEE
- #include <Vk/VkInterruptDialog.h>
-
- PPPPUUUUBBBBLLLLIIIICCCC PPPPRRRROOOOTTTTOOOOCCCCOOOOLLLL SSSSUUUUMMMMMMMMAAAARRRRYYYY
- CCCCoooonnnnssssttttrrrruuuuccccttttoooorrrr////DDDDeeeessssttttrrrruuuuccccttttoooorrrr
- VkInterruptDialog(const char* name);
- virtual void ~VkInterruptDialog(void);
-
-
- CCCChhhheeeecccckkkkiiiinnnngggg ffffoooorrrr IIIInnnntttteeeerrrrrrrruuuuppppttttssss
- Boolean wasInterupted(void);
-
-
- CCCCLLLLAAAASSSSSSSS DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- This class supports applications that need to perform a lengthy task
- and allow the task to be interrupted. To use the dialog,
- applications must use the _V_k_A_p_p::_s_e_t_B_u_s_y_D_i_a_l_o_g() method to install
- an instance of VkInterruptDialog as the application's current busy
- dialog, and then call _V_k_A_p_p::_b_u_s_y() Applications must periodically
- check to see if the application has been interrupted. The period of
- time between checks is up to the application, which must weigh
- responsiveness against time spent checking.
-
- Note that checking for interrupts involves entering a secondary
- event loop for a short time, so the application must beware of re-
- entrancy problems in any callbacks that could be invoked.
-
-
-
- FFFFUUUUNNNNCCCCTTTTIIIIOOOONNNN DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNNSSSS
- VVVVkkkkIIIInnnntttteeeerrrrrrrruuuuppppttttDDDDiiiiaaaalllloooogggg(((())))
- VkInterruptDialog(const char* name);
-
-
- Initialize a VkInterruptDialog object. Normally, applications can
- use the globally instantiated _t_h_e_I_n_t_e_r_r_u_p_t_D_i_a_l_o_g.
-
- ~~~~VVVVkkkkIIIInnnntttteeeerrrrrrrruuuuppppttttDDDDiiiiaaaalllloooogggg(((())))
- virtual void ~VkInterruptDialog(void);
-
-
- Free the memory associated with a VkInterruptDialog object.
-
- wwwwaaaassssIIIInnnntttteeeerrrruuuupppptttteeeedddd(((())))
-
-
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- VVVVkkkkIIIInnnntttteeeerrrrrrrruuuuppppttttDDDDiiiiaaaalllloooogggg((((3333xxxx)))) VVVVkkkkIIIInnnntttteeeerrrrrrrruuuuppppttttDDDDiiiiaaaalllloooogggg((((3333xxxx))))
-
-
-
- Boolean wasInterupted(void);
-
-
- Check to see if the user has pushed the dialog's "cancel" button
- since the last time this function was called.
-
- DDDDAAAATTTTAAAA MMMMEEEEMMMMBBBBEEEERRRR DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNNSSSS
- ccccoooonnnnsssstttt cccchhhhaaaarrrr**** ccccoooonnnnsssstttt iiiinnnntttteeeerrrrrrrruuuupppptttteeeeddddCCCCaaaallllllllbbbbaaaacccckkkk;;;;
- static const char *const interruptedCallback;
-
-
- This callback list allows objects to register a member function to
- be called when the user selects the "Cancel" button of a
- VkInterruptDialog dialog. This callback can only be called if the
- application calls _w_a_s_I_n_t_e_r_r_u_p_t_e_d(). Normally, the application will
- test the return value of this function, but the callback may be
- useful in other situations.
-
- EEEEXXXXAAAAMMMMPPPPLLLLEEEE
- The following code segment installs the interrupt dialog, and
- performs a simulated lengthy task, checking for interrupts
- periodically.
-
-
- int i, j, k = 0;
-
- // Install the interruptible dialog as the
- // dialog to post when busy
-
- theApplication->setBusyDialog(theInterruptDialog);
-
- // Start being "busy"
-
- theApplication->busy("Very Busy",
- (BusyWindow *) clientData);
-
- k = 0;
-
- for(i=0; i<10000; i++)
- {
- // Every so often, see if the task
- // was interrupted
-
- if(theInterruptDialog->wasInterupted())
- {
- break; // kick out of current
- // task if user interrupts
- }
-
- sleep(1);
- }
-
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-
-
-
- VVVVkkkkIIIInnnntttteeeerrrrrrrruuuuppppttttDDDDiiiiaaaalllloooogggg((((3333xxxx)))) VVVVkkkkIIIInnnntttteeeerrrrrrrruuuuppppttttDDDDiiiiaaaalllloooogggg((((3333xxxx))))
-
-
-
- // Task done, so we're not busy anymore
-
- theApplication->notBusy();
-
- // Restore the application's busy dialog
- // as the default
-
- theApplication->setBusyDialog(NULL);
-
-
-
- IIIINNNNHHHHEEEERRRRIIIITTTTEEEEDDDD MMMMEEEEMMMMBBBBEEEERRRR FFFFUUUUNNNNCCCCTTTTIIIIOOOONNNNSSSS
- IIIInnnnhhhheeeerrrriiiitttteeeedddd ffffrrrroooommmm VVVVkkkkDDDDiiiiaaaallllooooggggMMMMaaaannnnaaaaggggeeeerrrr
- show(), hide(), className(), clearCache(), prepost(), ok(),
- cancel(), apply(), setTitle(), setButtonLabels(), unpost(),
- unpostAll(), centerOnScreen(), lastPosted(), post(), postModal(),
- postBlocked(), postAndWait(), post(), _action, _showOK, _showCancel,
- _showApply, _allowMultipleDialogs, _minimizeMultipleDialogs,
- prepostCallback
-
-
- IIIInnnnhhhheeeerrrriiiitttteeeedddd ffffrrrroooommmm VVVVkkkkCCCCoooommmmppppoooonnnneeeennnntttt
- installDestroyHandler(), removeDestroyHandler(), widgetDestroyed(),
- setDefaultResources(), getResources(), manage(), unmanage(),
- baseWidget(), okToQuit(), _name, _baseWidget, _w, deleteCallback
-
-
- IIIInnnnhhhheeeerrrriiiitttteeeedddd ffffrrrroooommmm VVVVkkkkCCCCaaaallllllllbbbbaaaacccckkkkOOOObbbbjjjjeeeecccctttt
- callCallbacks(), addCallback(), removeCallback(),
- removeAllCallbacks()
-
-
- VVVVIIIIEEEEWWWWKKKKIIIITTTT 2222....1111 CCCCHHHHAAAANNNNGGGGEEEESSSS
- In multi-screen enabled applications or components, references to
- _t_h_e_I_n_t_e_r_r_u_p_t_D_i_a_l_o_g will only be valid for the _d_e_f_a_u_l_t screen in the
- application. The following new function API will return the
- VkInterruptDialog associated with the appropriate screen and should be
- used instead of _t_h_e_I_n_t_e_r_r_u_p_t_D_i_a_l_o_g;
-
-
- VkInterruptDialog *getAppInterruptDialog(VkComponent *comp);
-
-
- CCCCLLLLAAAASSSSSSSSEEEESSSS UUUUSSSSEEEEDDDD BBBBYYYY TTTTHHHHIIIISSSS CCCCLLLLAAAASSSSSSSS
- VkApp
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- VkBusyDialog, VkDialogManager, VkComponent, VkApp
- _V_i_e_w_K_i_t _P_r_o_g_r_a_m_m_e_r'_s _G_u_i_d_e
- _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m, DEC Press, Bob Sheifler and Jim Gettys
- _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m _T_o_o_l_k_i_t, DEC Press, Paul Asente and Ralph Swick
- _T_h_e _O_S_F/_M_o_t_i_f _P_r_o_g_r_a_m_m_e_r_s _R_e_f_e_r_e_n_c_e, Prentice Hall, OSF
-
-
-
- PPPPaaaaggggeeee 3333
-
-
-
-
-
-
- VVVVkkkkIIIInnnntttteeeerrrrrrrruuuuppppttttDDDDiiiiaaaalllloooogggg((((3333xxxx)))) VVVVkkkkIIIInnnntttteeeerrrrrrrruuuuppppttttDDDDiiiiaaaalllloooogggg((((3333xxxx))))
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 4444
-
-
-
-
-
-
-